//
//  Player_def.h
//  Player: superclass player
//
//  Created by Enric Vergara on 20.10.12. 
//  Copyright OWLAB 2010. All rights reserved.


//---Define new types----
#define SMALL_BLEND                 5
#define BIG_BLEND                   10
#define CARD_OFFSET_POSX            40
#define BUTTON_DEALER_OFFSET_POSX   -220
#define BUTTON_BLIND_OFFSET_POSX    -150
#define BUTTON_OFFSET_POSY          60
#define PLAYER_MONEY                10000
#define AI_PLAYER_THINKING_TIME     5.f
#define BET_PLAYER_THINKING_TIME    2.f


typedef enum
{
    PLAYER_AI,
    PLAYER_LOCAL,
    PLAYER_NETWORK
    
} TYPE_PLAYER;


typedef enum
{
    LEFT_CARD = 0,
    RIGHT_CARD = 1,
    LEFT_CARD_REVERSE = 2,
    RIGHT_CARD_REVERSE = 3
    
} TYPE_HOLE_CARD;

typedef enum
{
    PlayerState_Waiting = 0,
    PlayerState_Thinking,
    PlayerState_Check,
    PlayerState_Fold,
    PlayerState_AllIn,
    PlayerState_Call,
    PlayerState_Raise,
    PlayerState_Winner,
    PlayerState_NoMoney
    
} TYPE_PLAYER_STATE;

struct CheckOptions
{
	bool			m_bDoFold;
	bool 			m_bDoCall;
	bool 			m_bDoRaise;
	bool 			m_bDoCheck;
	unsigned int	m_uiRaiseAmmount;
	unsigned int	m_uiCallAmmount;
    unsigned int    m_uiCallAllIn;
    unsigned int    m_uiRaiseAllIn;
};

struct Hand
{
	unsigned int    hand_value_primary;    //guarda el valor de la jugada, 1, 2, 3,...
    unsigned int    hand_value_secondary;  //guarda el valor de la carta més alta que pot decidir el guanyador
    unsigned int    hand_value_third;      //guarda el valor de la carta més alta de la ma
    unsigned int    hand_value_fourth;     //guarda el valor de l'altre carta de la ma
    unsigned int    hand_value_fith;
    unsigned int    OrderedCardsValues[7];
    unsigned int    flush_figure;
    bool            left;
    bool            right;
    int             win_hand;
    bool            fold;
};
//-----------------------
